<?php
/**
 * Smart Library - Smart Framework
 * http://smart-framework.highet.eu
 *
 * @category   SmartL
 * @package    SmartL_Application
 * @subpackage Login
 * @copyright  Copyright (c) 2005-2008 Smart Framework team - Stepan Sindelar, Vojtech Vit
 * @license    http://www.opensource.org/licenses/bsd-license.php	New BSD License
 */

/**
 * An adapter interface used to connect Smart Library and the application User model.
 * Its methods are used to gain user preferences.
 *
 * @package SmartL_Application
 * @subpackage Login
 */
interface SmartL_Application_Login_UserPreferences_Interface {
	/**
	 * Returns name of current user's preferred template.
	 * 
	 * @return string User preferred template name
	 */
	public function getTemplateName();
	
	/**
	 * Returns name of current user's preferred skin.
	 * Note that this skin must belong to user preferred template.
	 * 
	 * @return string User preferred skin name
	 */
	public function getSkinName();
	
	/**
	 * Returns current user preferred language.
	 * 
	 * @returns SmartL_Application_Config_LanguageInfo User preferred language info class
	 */
	public function getLanguage();
}